package com.zw.a.basic.a08.demo01_scanner;

import java.util.Scanner;

//案例: 演示使用Scanner的小技巧
/*
    问题描述: 先用nextInt()接收整数, 然后再用nextLine()接收字符串, 导致字符串无法接收.

    产生原因:
        1. nextInt()方法的结束标记是: \r\n, 但是该方法只接收整数, 不接收\r\n.
        2. nextLine()方法的结束标记是: \r\n, 识别到上边遗留下来的\r\n后, 直接结束了.

    解决方案:
        1. 采用next()方法解决.
        2. 重新调用一次nextLine();
        3. 重新new一个Scanner.
        4. 实际开发写法:   目前超纲, 先了解.
            都用字符串接收, 然后把字符串类型的数字, 转成对应的 int类型的数字即可.
 */
public class ScannerDemo03 {
    public static void main(String[] args) {
        //1. 创建对象.
        Scanner sc = new Scanner(System.in);
        //2. 提示用户录入
        System.out.println("请录入一个整数");
        //3. 接收并输出: 整数
        String s1 = sc.nextLine();
        //核心(超纲): 把字符串数字转成int数字
        int num = Integer.parseInt(s1);
        System.out.println(num + 3);

        //4. 接收并输出: 字符串
        System.out.println("请录入一个字符串: ");
        String s2 = sc.nextLine();
        System.out.println(s2);

    }
}
